﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using Quebec.Logging.Services.Server;

namespace Quebec.Logging.Services
{
	/// <summary>
	/// Defines the ServiceContract. This is hosted in the Mcs.Services project.
	/// </summary>
	[ServiceContract(Namespace = ServiceContractNamespace.CONTRACT_NAMESPACE)]
	public interface ILoggingService
	{
		[OperationContract(Name = "Debug")]
		void Debug(string applicationName, object message);

		[OperationContract(Name = "Info")]
		void Info(string applicationName, object message);

		[OperationContract(Name = "Error")]
		void Error(string applicationName, object message);

		[OperationContract(Name = "Warn")]
		void Warn(string applicationName, object message);

		[OperationContract(Name = "Fatal")]
		void Fatal(string applicationName, object message);
	}
}
